-
Couldn't load subscription status.
- Fork 73
[wip] Removed cross-compile patch from llvm-emscripten build #2339
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[wip] Removed cross-compile patch from llvm-emscripten build #2339
Conversation
|
Looks like the error occurs because emscripten-forge might be forcing the toolchain file, but we're building llvm-tblgen etc for the host correct ? This means we need to suppress it for 1st half and later we can restore the toolchain |
By supress do you mean "unsetting the CMAKE_TOOLCHAIN_FILE" while building for host? |
Can possibly try that (passing empty string for the host rather than unsetting ?) |
|
One small thing, I see this while building the llvm-tblgen I don't think we need the cross compiling emulator as we're building for host. Could you address this too ? |
Done |
|
Thanks for the changes, here hopefully everything build fine. |
|
Hey @kr-2003, Through conda-forge (or through any llvm release) , We won't be having direct access to clang-tblgen. Here's the reason why the llvm-tblgen binary is provided but clang-tblgen is not ! https://discourse.llvm.org/t/clang-tblgen-not-installed/52997 Which means we need to build our own llvm-tblgen and clang-tblgen ! So we need to move along the lines of what you've done
|
|
Hey @anutosh491, Thanks. I have pushed the changes. Made two new scripts (i.e. activats.sh and deactivate.sh) inside the recipe-directory. |
d229bb1 to
2b747d7
Compare
2b747d7 to
d2cbe8a
Compare
|
Hey @DerThorsten, Should each recipe have their own activation/deactivation scripts? Is it possible for us to use the scripts under |
I think in general, we want to avoid activation scripts when possible. Also I am a bit unsure why we need to add new
if you build for the "build-arch" then there is no emscripten whatsoever. So why would you need to do any disabling of activation scripts? |
Yes, correct. My bad. I have moved |
d88f229 to
9de87f6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @kr-2003 , this looks good.
I'll allow @DerThorsten to take the final call just to confirm everything's in place.
For some context
-
llvm's emscripten build need llvm-tblgen/clang-tblgen being built for the build arch and then being shared through
-DLLVM_TABLEGENwhile building (discussion with Serge and other references can be found here compiler-research/CppInterOp#583 (comment)) -
We were using a hacky patch to build llvm-tblgen at buildtime and then using it on the go. But would be much better without it.
-
Hence this recipe should add a build arch recipe for llvm-tblgen and update the emscripten recipe for llvm to reference the location of the tablegen executable.
9de87f6 to
2dad26e
Compare
|
Hey @kr-2003, Thanks for the changes here. Now that this has gone in, we need to test if this llvm build is working as per what we want.
Ping me once this is done. |
|

EDIT by Anutosh : For anyone interested in this change. Serge and I had introduced a hacky patch to build llvm back in Dec 2023. We knew it could be addressed sometime down the line, just had find time for it. Here's the context and references to support this change compiler-research/CppInterOp#583 (comment)